#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

class ControllerThread;
namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

signals:
    void MasterDeviceUpdate(const char target_index, const QVector<double> &data);
    void ConnectSocket(const QString &addr, const unsigned short port);
    void SetFreq(const unsigned int freq);
private slots:
    void DisplayStatus(const char attr, const QString &info);

    void OnSlidersValueChangedLeftArm();
    void OnSlidersValueChangedRightArm();

    void OnSetFreqButton();
    void OnConnectSocketButton();
public:
    explicit MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

    ControllerThread *thread_;
private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H
